#include<iostream>
#include<string>
using namespace std;
typedef long long LL;
char temp1[20] = "9223372036854775807";
char temp2[21] = "-9223372036854775808";
string s;
int main()
{
	cin >> s;
	cout << s << endl;
	if (s.size() > 20) {
		cout << "BigInteger" << endl;
		return 0;
	}
	bool flag = 0;
	if (s[0] == '-') {
		flag = 1;
	}
	bool flag2 = 0;
	if (flag && s.size() == 20) {
		cout << "111" << endl;
		for (int i = 1; i < s.size(); i++) {
			if (s[i] > temp2[i]) {
				cout << "BigInteger";
				flag2 = 1;
				break;
			}
			if (s[i] < temp2[i]) {
				cout << "long";
				flag2 = 1;
				break;
			}
		}
		if (!flag2) {
			cout << "long" << endl;
		}
		return 0;
	}
	else if (s.size() < 19) {
		cout << "222" << endl;
		LL ans = 0;
		if (flag) {
			for (int i = 1; i < s.size(); i++) {
				ans = ans * 10 + s[i] - '0';
			}
			ans *= -1;
		}
		else {
			for (int i = 0; i < s.size(); i++) {
				ans = ans * 10 + s[i] - '0';
			}
		}
		cout << "ans==" << ans << endl;
		if (ans >= -128 && ans <= 127) {
			cout << "byte" << endl;
		}
		else if (ans >= -32768 && ans <= 32767) {
			cout << "short" << endl;
		}
		else if (ans >= -2147483648 && ans <= 2147483647) {
			cout << "int" << endl;
		}
		else {
			cout << "long" << endl;
		}
		return 0;
	}
	else if (!flag && s.size() == 19) {
		cout << "333" << endl;
		flag2 = 0;
		cout << s << endl;
		for (int i = 0; i < s.size(); i++) {
			if (s[i] < temp1[i]) {
				flag2 = 1;
				cout << "long";
				break;
			}
			if (s[i] > temp1[i]) {
				flag2 = 1;
				cout << "BigInteger";
				break;
			}
		}
		if (!flag2) {
			cout << "long" << endl;
		}
		return 0;
	}
	return 0;
}